package 设计模式.创建型模式.单例模式;

import 设计模式.创建型模式.单例模式.懒汉单例.LazySingleton;
import 设计模式.创建型模式.单例模式.饿汉单例.HungrySingleton;

/**
 * @author MT
 * @date 2019-11-13 16:40
 */
public class 单例模式 {
    public static void main(String[] args) {
        /**
         * 懒汉模式
         */
        LazySingleton instance = LazySingleton.getInstance();
        instance.getName();
        LazySingleton instance1 = LazySingleton.getInstance();
        instance1.getName();
        if (instance == instance1) {
            System.out.println("他们是同一个对象");
        } else {
            System.out.println("他们不是同一个对象");
        }

        /**
         * 饿汗模式
         */
        HungrySingleton instance2 = HungrySingleton.getInstance();
        instance2.getName();
        HungrySingleton instance3 = HungrySingleton.getInstance();
        instance3.getName();

        if (instance2 == instance3){
            System.out.println("他们是同一个对象");

        }else {
            System.out.println("他们不是同一个对象");
        }
    }
}
